package com.homeWork05;

import java.util.Random;

public class RandomNumHandlerDemo {
    /*
    1 首先存在一个接口（RandomNumHandler）
    2 在该接口中存在一个抽象方法（getNumber），该方法是无参数但是有返回值
    3 在测试类（RandomNumHandlerDemo）中存在一个方法（useRandomNumHandler），
    方法的的参数是RandomNumHandler类型的
        在方法内部调用了RandomNumHandler的getNumber方法
 */
    public static void main(String[] args) {
        RandomNumHandler rnh = new RandomNumHandler() {
            @Override
            public int getNumber() {
                Random r = new Random();
                int number = r.nextInt(10) + 1;
                return number;
            }
        };
        useRandomNumHandler(rnh);


        RandomNumHandler rnh2=()->{
            Random r = new Random();
            int number = r.nextInt(10) + 1;
            return number;
        };
        rnh2.getNumber();

    }

    public static void useRandomNumHandler(RandomNumHandler randomNumHandler) {
        int result = randomNumHandler.getNumber();
        System.out.println(result);
    }

    interface RandomNumHandler {
        int getNumber();

    }

}